Skip to content

Conversation

sergv
Copy link
Contributor

@sergv sergv commented Jun 1, 2025

The === operator holds on to inputs for error reporting which is suboptimal for 4GB input strings. Showing it in case test fails is probably not wise.

With this change the +RTS -s becomes

  10,770,647,720 bytes allocated in the heap
     491,363,192 bytes copied during GC
      84,320,336 bytes maximum residency (7 sample(s))
         372,656 bytes maximum slop
             255 MiB total memory in use (0 MiB lost due to fragmentation)

Given that all operations happen on lazy bytestrings it might make sense to pass +RTS -MNNNG to limit heap size to NNN gigabytes so that errors in streaming that lead to data being retained will get caught.

@Bodigrim Bodigrim merged commit fc1d70a into haskell:master Jun 1, 2025
33 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants